Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Forestry update #5737

Merged
merged 29 commits into from
Mar 9, 2024
Merged

Forestry update #5737

merged 29 commits into from
Mar 9, 2024

Conversation

nwjgit
Copy link
Contributor

@nwjgit nwjgit commented Feb 29, 2024

Description:

Forestry part two & forestry updates.

Changes:

  • new /chop flags
    • Twitcher gloves flag (gloves only work equipped)
    • Forestry flag (stops you from doing events, also removes wc guild boost when doing events)
  • Adds items & features from Forestry: Part Two.
  • Unique forestry events with loot, xp and end trip message.
  • Boost for using Felling axe with Forester's ration.
  • Add Forestry basket.
  • Adds leafs to trees.
  • Boost message for log basket.
  • Twitcher's gloves with proper functionality.
  • Fox & pheasant pet.
  • Removed: Clover insignia, Powdered pollen, Leprechaun charm, Bee on a stick
  • Add 10% more nests from having woodcutting cape or a completed forestry basket (need cape pouch & 99 cape in bank)
  • Tracking forestry events and xp for future use in /data

TODO: Plan to add all these in their own PR since this PR is already fairly big

Other checks:

  • I have tested all my changes thoroughly.

@nwjgit nwjgit marked this pull request as draft March 5, 2024 14:56
@nwjgit nwjgit marked this pull request as ready for review March 5, 2024 19:14
src/mahoji/commands/chop.ts Outdated Show resolved Hide resolved
src/lib/types/minions.ts Outdated Show resolved Hide resolved
src/tasks/minions/woodcuttingActivity.ts Outdated Show resolved Hide resolved
src/tasks/minions/woodcuttingActivity.ts Outdated Show resolved Hide resolved
@gc
Copy link
Collaborator

gc commented Mar 6, 2024

Apart from the few comments, it looks good as long as its tested and feedback has been addressed

src/mahoji/commands/chop.ts Outdated Show resolved Hide resolved
src/tasks/minions/woodcuttingActivity.ts Outdated Show resolved Hide resolved
@@ -236,7 +236,7 @@ export const woodcuttingTask: MinionTask = {

let strungRabbitFoot = user.hasEquipped('Strung rabbit foot');
let twitchersEquipped = user.hasEquipped("twitcher's gloves");
let twitcherSetting = '';
let twitcherSetting: TwitcherGloves | undefined = undefined;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dont know if it should be or not, but you dont have the default here.

Copy link
Contributor Author

@nwjgit nwjgit Mar 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still had it as string in options. I fixed it. thanks for the catch

Copy link
Contributor Author

@nwjgit nwjgit Mar 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh i see what you're saying now, i just removed the default entirely so that no setting is selected. Do you think I should set this to a default? like let twitcherSetting: TwitcherGloves | undefined = 'egg';

Edit: went ahead and added back in the default egg for the gloves without the use of the commandoption

@nwjgit
Copy link
Contributor Author

nwjgit commented Mar 6, 2024

Apart from the few comments, it looks good as long as its tested and feedback has been addressed

I did a round of testing with some testers a few days ago and all the feedback & bugs found were fixed.

@nwjgit nwjgit requested a review from gc March 8, 2024 18:00
@@ -93,6 +93,7 @@ async function handleForestry({ user, duration, loot }: { user: MUser; duration:
const event = ForestryEvents[eventIndex];
const defaultEventXP = 5 * (randInt(85, 115) / 100); // used for unverified xp rates
let eggsDelivered = 0;
let beeHive = 0;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This variable should be given a better name, just reading it, i have 0 idea what it is for or does.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I renamed it beeHiveRepairs to more accuratley reflect what it is. It's purpose is to get a more accurate xp rate to ingame xp rates.

for (let i = 0; i < randInt(5, 7); i++)

  • accounts for the average of 6 beehives per event, 5-7 for variance depending on how "busy" the event is

beeHiveRepairs += randInt(5, 10);

  • accounts for the users interaction with repairing the beehive, 5-10 for variance depending on how "busy" the event is

eventXP[event.uniqueXP] += user.skillLevel(event.uniqueXP) * 0.3 * beeHiveRepairs;

  • beeHiveRepairs is then used here to give an accurate amount of construction xp per event based on the users con level

@nwjgit nwjgit requested a review from gc March 9, 2024 16:49
@gc gc merged commit db8d8a6 into oldschoolgg:master Mar 9, 2024
5 checks passed
@nwjgit nwjgit deleted the ForestryUpdate branch March 9, 2024 19:32
@nwjgit nwjgit mentioned this pull request Sep 5, 2024
1 task
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants